package com.hzw.saas.api.storage.query;

import com.hzw.saas.common.config.bo.BaseBO;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * @author zzl
 * @since 07/02/2021
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class ResourceFileUpdateQuery extends BaseBO {

    private static final long serialVersionUID = 1L;

    /**
     * 文件实际类型（通过文件头检测）
     */
    private String type;

    /**
     * 文件长度，单位：byte
     */
    private Long length;

    /**
     * 图片宽度，仅对图片类型文件有效
     */
    private Integer width;

    /**
     * 图片高度，仅对图片类型文件有效
     */
    private Integer height;

    /**
     * 弱校验和，取adler-32
     */
    private Long weakChecksum;

    /**
     * 强校验和，取md5(16进制字符串)
     */
    private String strongChecksum;

    /**
     * 文件完整性
     * 200-正常，201-上传中，202-合并中
     */
    private Integer integrity;

    /**
     * 存储虚拟目录
     */
    private String catalog;

    /**
     * 存储类型
     */
    private String serviceType;

    /**
     * 存储名称
     */
    private String serviceProvider;

    /**
     * 资源路径
     */
    private String url;

    /**
     * 资源存储Key
     */
    private String resourceKey;

    /**
     * 已存在的缩略图尺寸集合(,分隔)
     */
    private String thumbnails;

    /**
     * 文件本地存在
     * 0-不存在，1-存在
     * 主要用于冷热数据和定时清理
     */
    private Integer isLocal;

    /**
     * 文件云端存在
     * 0-不存在，1-存在
     * 主要用于冷热数据和定时清理
     */
    private Integer isCloud;

    /**
     * loc分片信息
     */
    private String chunkInfo;

}
